package com.lvy.hczn.transmit.domain.dto.cteck;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.text.Bidi;
import java.util.Date;
import java.util.List;

/**
 * 发货清单
 *
 * @author yw
 * @date 2023-06-07 10:49:57
 **/
@Data
public class InvoiceInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键")
    private String id;

    @ApiModelProperty(value = "发货单据编码")
    private String invoiceCode;

    @ApiModelProperty(value = "来源")
    private String sourceId;

    @ApiModelProperty(value = "1待取件,2配送中,3已签收,4已入库")
    private Integer lnvoiceState;

    @ApiModelProperty(value = "供应商编码")
    private String supplierCode;

    @ApiModelProperty(value = "仓库编码")
    private String repId;

    @ApiModelProperty(value = "商品总重量")
    private BigDecimal goodsHeft;

    @ApiModelProperty(value = "取件地址")
    private String pickupAddress;

    @ApiModelProperty(value = "取件开始时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private Date pickupStartTime;

    @ApiModelProperty(value = "更新时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateDate;

    @ApiModelProperty(value = "删除字段：0,删除 1：正常")
    private Integer isDelete;

    @ApiModelProperty(value = "取货码")
    private String pickupCode;

    @ApiModelProperty(value = "更新人")
    private String updateUser;

    @ApiModelProperty(value = "仓储费")
    private BigDecimal storagePrice;

    @ApiModelProperty(value = "商品分类id")
    private String categoryId;

    @ApiModelProperty(value = "配送方式:1自配送,2平台配送")
    private Integer deliveryType;

    @ApiModelProperty(value = "商品总数量")
    private Integer goodsAssembleNumber;

    @ApiModelProperty(value = "商品总体积")
    private BigDecimal goodsVolume;

    @ApiModelProperty(value = "创建人")
    private String createUser;

    @ApiModelProperty(value = "取件结束时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private Date pickupEndTime;

    @ApiModelProperty(value = "创建时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createDate;

    @ApiModelProperty(value = "货箱总数")
    private Integer containersTotal;

    @ApiModelProperty(value = "配送费")
    private BigDecimal deliveryPrice;

    @ApiModelProperty(value = "单据来源 0:C端,1:B端")
    private Integer sourceOrigin;

    private List<InvoiceBll> list;
}
